home *** CD-ROM | disk | FTP | other *** search
/ Light ROM 1 / LIGHT-ROM 1 (Amiga Library Services)(1994).iso / ffdisks / d963.lha / SIOD / scm / scambia-all.scm < prev    next >
Text File  |  1993-02-22  |  634b  |  19 lines

  1. (define (scambia-all lis x y)
  2.         (define pila (make-pila))
  3.         (define l lis)
  4.         (do ()
  5.             ((and (null? l) (empty-pila? pila)) lis)
  6.             (cond ((null? l)
  7.                     (set! l (top pila))
  8.                     (pop pila))
  9.                    ((pair? (car l))
  10.                     (push (cdr l) pila)
  11.                     (set! l (car l)))
  12.                    ((eq? x (car l))
  13.                     (set-car! l y)
  14.                     (set! l (cdr l)))
  15.                    ((eq? y (car l))
  16.                     (set-car! l x)
  17.                     (set! l (cdr l)))
  18.                    (else (set! l (cdr l))))))
  19.